// pages/cate/cate.js
import {request as axios} from '../../util/request/request'
const CartBehavior = require('../../behavior/cart');
Page({
    behaviors:[CartBehavior],

    /**
     * 页面的初始数据
     */
    data: {
        vh: 0,
        cateList: [],
        cateLevel2: [],
        // 当前激活项
        active: 0,
        // 滚动距离顶部距离
        scrollTop: 0
    },
    // 获取分类列表
    async getCateList() {
        const { data: res } = await axios('GET','/categories')
        if (res.meta.status !== 200) return wx.showToast({
          title: '数据加载失败',
          icon:'error'
        })
        this.setData({
            cateList:res.message,
            cateLevel2:res.message[0].children
        })
      },
      // 切换激活项
      activeChange(e) {
          let idx = e.currentTarget.dataset.idx
          this.setData({
             active:idx,
             cateLevel2:this.data.cateList[idx].children,
             scrollTop:this.data.scrollTop ? 0 : 1
          })
      },
      gotoGoodsList(e) {
        let item = e.currentTarget.dataset.item3
        wx.navigateTo({
          url: "/subpkg/goods_list/goods_list?cid=" + item.cat_id
        })
      },
      // 跳转搜索
      gotoSearch() {
        wx.navigateTo({
          url: "/subpkg/search/search"
        })
      },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad(options) {
        
        this.getCateList()
        // 获取可用高度
      const sysInfo = wx.getSystemInfoSync()
      this.setData({
          vh:sysInfo.windowHeight - 50
      })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady() {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow() {
        this.setBadge()
    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide() {
        wx.vibrateShort({
            type:'medium'
        })
    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage() {

    }
})